在 Elastic Cloud 中,提供了很多服務。
今天讓我們來看看如何快速增加 MySQL log 至Elastic Cloud。(Filebeat)
新增 Lod Data
選擇 MySQL
依照你的作業系統,選擇不同的安裝方式。由於我打算使用 WIN 10 WSL2 Ubuntu 18 進行測試。所以我需要選擇 Deb:
基本上依照頁面的指令一步一步進行安裝即可:
Download and install Filebeat
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.9.0-amd64.deb
sudo dpkg -i filebeat-7.9.0-amd64.deb
Edit the configuration : edit /etc/filebeat/filebeat.yml
cloud.id: "mxyz13:YXNpYS1lYXN0MS5nY3Au888888888888888888888Yy1jbG91ZC5jb20kMzFlMTg1OWVhNDc4NDQwZWJlMzM0ZWEwYzNmZWViZDMkYjk2NjczODFjODA4NGNjOWE1YTc5NDIwMjAzOGQyNWU="
cloud.auth: "elastic:密碼"
Enable and configure the mysql module
sudo filebeat modules enable mysql
Start Filebeat
sudo filebeat setup
sudo service filebeat start
基本上,一切只需要照著指示進行即可。因為這是系統層面的變更,記得在編輯 /etc/filebeat/filebeat.yml 時要使用 sudo 進行編輯。
最後一步就是點擊
Module status右側的 Check Data
若是正常無誤就會顯示如下字樣
Data successfully received from this module
然後可能因為我是個人的 WSL2 的環境下作業,MySQL的取存不是很頻繁,所以大約等了30幾分鐘,都還沒有辦法使用 MySQL Log dashboard. 在我的狀況中,只會出現如下的畫面。也許明天再來檢查看看
那要怎麼確保,Elastic Cloud是真的收到我的 log Data呢?
可以先到 Index Management 進行檢查.
此處可以發現,比昨天多出了 filebeat-7.9.0-2020.09.05-000001 這個 Index。由此也可推斷,在建立 MySQL Log Index 時,會自動以新建日期做為 Index 名稱的一部分。當然 Index 要改名也是可以的,但目前我們還在學習階段所以先不做太多調整。
接下來,讓我們用使用 API Console 進行檢查。由於我在 WSL2 上的 HostName 是 "DESKTOP-T4A53M5";
filebeat-7.9.0-2020.09.05-000001/_search?hostname:DESKTOP-T4A53M5
果然找到了 366 筆的 log 資料
由此可見,如果能善用這項服務,就可以快速的發現什麼時間點對於 MySQL 的Loading最重,什麼時候有錯誤的狀況發生,對於資訊系統的運營會有很大的幫助。
今天就簡單至此;坦白說,設定如此簡單,我有一點嚇到;原本以為會更複雜點,不過目前X在MySQL Log dashboard仍然有點問題,等明天再來試試看吧